[build-system]
# Should be mirrored in requirements-build.txt
requires = [
    "ninja",
    "packaging",
    "setuptools >= 49.4.0",
    "torch == 2.1.2",
    "wheel",
]
build-backend = "setuptools.build_meta"

[tool.ruff.lint]
select = [
    # pycodestyle
    "E",
    # Pyflakes
    "F",
    # pyupgrade
    # "UP",
    # flake8-bugbear
    "B",
    # flake8-simplify
    "SIM",
    # isort
    # "I",
]
ignore = [
    # star imports
    "F405", "F403",
    # lambda expression assignment
    "E731",
    # line too long, handled by black formatting
    "E501",
    # .strip() with multi-character strings
    "B005",
    # Loop control variable not used within loop body
    "B007",
]

[tool.mypy]
python_version = "3.8"

ignore_missing_imports = true

files = "vllm"
# TODO(woosuk): Include the code from Megatron and HuggingFace.
exclude = "vllm/model_executor/parallel_utils/|vllm/model_executor/models/"


[tool.codespell]
ignore-words-list = "dout, te, indicies"
skip = "./tests/prompts"
